// noinspection JSUnresolvedReference /** * Field Google Map */ /* global jQuery, document, redux_change, redux, google */ (function ( $ ) { 'use strict'; redux.field_objects = redux.field_objects || {}; redux.field_objects.google_maps = redux.field_objects.google_maps || {}; /* LIBRARY INIT */ redux.field_objects.google_maps.init = function ( selector ) { if ( ! selector ) { selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-google_maps:visible' ); } $( selector ).each( function ( i ) { let delayRender; const el = $( this ); let parent = el; if ( ! el.hasClass( 'redux-field-container' ) ) { parent = el.parents( '.redux-field-container:first' ); } if ( parent.is( ':hidden' ) ) { return; } if ( parent.hasClass( 'redux-field-init' ) ) { parent.removeClass( 'redux-field-init' ); } else { return; } // Check for delay render, which is useful for calling a map // render after JavaScript load. delayRender = Boolean( el.find( '.redux_framework_google_maps' ).data( 'delay-render' ) ); // API Key button. redux.field_objects.google_maps.clickHandler( el ); // Init our maps. redux.field_objects.google_maps.initMap( el, i, delayRender ); } ); }; /* INIT MAP FUNCTION */ redux.field_objects.google_maps.initMap = async function ( el, idx, delayRender ) { let delayed; let scrollWheel; let streetView; let mapType; let address; let defLat; let defLong; let defaultZoom; let mapOptions; let geocoder; let g_autoComplete; let g_LatLng; let g_map; let noLatLng = false; // Pull the map class. const mapClass = el.find( '.redux_framework_google_maps' ); const containerID = mapClass.attr( 'id' ); const autocomplete = containerID + '_autocomplete'; const canvas = containerID + '_map_canvas'; const canvasId = $( '#' + canvas ); const latitude = containerID + '_latitude'; const longitude = containerID + '_longitude'; // Add map index to data attr. // Why, say we want to use delay_render, // and want to init the map later on. // You'd need the index number in the // event of multiple map instances. // This allows one to retrieve it // later. $( mapClass ).attr( 'data-idx', idx ); if ( true === delayRender ) { return; } // Map has been rendered, no need to process again. if ( $( '#' + containerID ).hasClass( 'rendered' ) ) { return; } // If a map is set to delay render and has been initiated // from another scrip, add the 'render' class so rendering // does not occur. // It messes things up. delayed = Boolean( mapClass.data( 'delay-render' ) ); if ( true === delayed ) { mapClass.addClass( 'rendered' ); } // Create the autocomplete object, restricting the search // to geographical location types. g_autoComplete = await google.maps.importLibrary( 'places' ); g_autoComplete = new google.maps.places.Autocomplete( document.getElementById( autocomplete ), {types: ['geocode']} ); // Data bindings. scrollWheel = Boolean( mapClass.data( 'scroll-wheel' ) ); streetView = Boolean( mapClass.data( 'street-view' ) ); mapType = Boolean( mapClass.data( 'map-type' ) ); address = mapClass.data( 'address' ); address = decodeURIComponent( address ); address = address.trim(); // Set default Lat/lng. defLat = canvasId.data( 'default-lat' ); defLong = canvasId.data( 'default-long' ); defaultZoom = canvasId.data( 'default-zoom' ); // Eval whether to set maps based on lat/lng or address. if ( '' !== address ) { if ( '' === defLat || '' === defLong ) { noLatLng = true; } } else { noLatLng = false; } // Can't have empty values, or the map API will complain. // Set default for the middle of the United States. defLat = defLat ? defLat : 39.11676722061108; defLong = defLong ? defLong : -100.47761000000003; if ( noLatLng ) { // If displaying a map based on an address. geocoder = new google.maps.Geocoder(); // Set up Geocode and pass address. geocoder.geocode( {'address': address}, function ( results, status ) { let latitude; let longitude; // Function results. if ( status === google.maps.GeocoderStatus.OK ) { // A good address was passed. g_LatLng = results[0].geometry.location; // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); // Get and set lat/long data. latitude = el.find( '#' + containerID + '_latitude' ); latitude.val( results[0].geometry.location.lat() ); longitude = el.find( '#' + containerID + '_longitude' ); longitude.val( results[0].geometry.location.lng() ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } else { // No data found, alert the user. alert( 'Geocode was not successful for the following reason: ' + status ); } } ); } else { // If displaying map based on an lat/lng. g_LatLng = new google.maps.LatLng( defLat, defLong ); // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, // Start off far unless an item is selected, set by php. streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create the map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } }; redux.field_objects.google_maps.renderControls = function ( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ) { let markerTooltip; let infoWindow; let g_marker; let geoAlert = mapClass.data( 'geo-alert' ); // Get HTML. const input = document.getElementById( autocomplete ); // Set objects into the map. g_map.controls[google.maps.ControlPosition.TOP_LEFT].push( input ); // Bind objects to the map. g_autoComplete = new google.maps.places.Autocomplete( input ); g_autoComplete.bindTo( 'bounds', g_map ); // Get the marker tooltip data. markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Create infoWindow. infoWindow = new google.maps.InfoWindow(); // Create marker. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), draggable: true, title: markerTooltip, animation: google.maps.Animation.DROP } ); geoAlert = decodeURIComponent( geoAlert ); // Place change. google.maps.event.addListener( g_autoComplete, 'place_changed', function () { let place; let address; let markerTooltip; infoWindow.close(); // Get place data. place = g_autoComplete.getPlace(); // Display alert if something went wrong. if ( ! place.geometry ) { window.alert( geoAlert ); return; } console.log( place.geometry.viewport ); // If the place has a geometry, then present it on a map. if ( place.geometry.viewport ) { g_map.fitBounds( place.geometry.viewport ); } else { g_map.setCenter( place.geometry.location ); g_map.setZoom( 17 ); // Why 17? Because it looks good. } markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Set the marker icon. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), title: markerTooltip, clickable: true, draggable: true, animation: google.maps.Animation.DROP } ); // Set marker position and display. g_marker.setPosition( place.geometry.location ); g_marker.setVisible( true ); // Form array of address components. address = ''; if ( place.address_components ) { address = [( place.address_components[0] && place.address_components[0].short_name || '' ), ( place.address_components[1] && place.address_components[1].short_name || '' ), ( place.address_components[2] && place.address_components[2].short_name || '' )].join( ' ' ); } // Set the default marker info window with address data. infoWindow.setContent( '
' + place.name + '
' + address ); infoWindow.open( g_map, g_marker ); // Run Geolocation. redux.field_objects.google_maps.geoLocate( g_autoComplete ); // Fill in address inputs. redux.field_objects.google_maps.fillInAddress( el, latitude, longitude, g_autoComplete ); } ); // Marker drag. google.maps.event.addListener( g_marker, 'drag', function ( event ) { document.getElementById( latitude ).value = event.latLng.lat(); document.getElementById( longitude ).value = event.latLng.lng(); } ); // End marker drag. google.maps.event.addListener( g_marker, 'dragend', function () { redux_change( el.find( '.redux_framework_google_maps' ) ); } ); // Zoom Changed. g_map.addListener( 'zoom_changed', function () { el.find( '.google_m_zoom_input' ).val( g_map.getZoom() ); } ); // Marker Info Window. infoWindow = new google.maps.InfoWindow(); google.maps.event.addListener( g_marker, 'click', function () { const marker_info = containerID + '_marker_info'; const infoValue = document.getElementById( marker_info ).value; if ( '' !== infoValue ) { infoWindow.setContent( infoValue ); infoWindow.open( g_map, g_marker ); } } ); }; /* FILL IN ADDRESS FUNCTION */ redux.field_objects.google_maps.fillInAddress = function ( el, latitude, longitude, g_autoComplete ) { // Set variables. const containerID = el.find( '.redux_framework_google_maps' ).attr( 'id' ); // What if someone only wants city, or state, ect... // gotta do it this way to check for the address! // Need to check each of the returned components to see what is returned. const componentForm = { street_number: 'short_name', route: 'long_name', locality: 'long_name', administrative_area_level_1: 'short_name', country: 'long_name', postal_code: 'short_name' }; // Get the place details from the autocomplete object. const place = g_autoComplete.getPlace(); let component; let i; let addressType; let _d_addressType; let val; let len; document.getElementById( latitude ).value = place.geometry.location.lat(); document.getElementById( longitude ).value = place.geometry.location.lng(); for ( component in componentForm ) { if ( componentForm.hasOwnProperty( component ) ) { // Push in the dynamic form element ID again. component = containerID + '_' + component; // Assign to proper place. document.getElementById( component ).value = ''; document.getElementById( component ).disabled = false; } } // Get each component of the address from the place details // and fill the corresponding field on the form. len = place.address_components.length; for ( i = 0; i < len; i += 1 ) { addressType = place.address_components[i].types[0]; if ( componentForm[addressType] ) { // Push in the dynamic form element ID again. _d_addressType = containerID + '_' + addressType; // Get the original. val = place.address_components[i][componentForm[addressType]]; // Assign to proper place. document.getElementById( _d_addressType ).value = val; } } }; redux.field_objects.google_maps.geoLocate = function ( g_autoComplete ) { if ( navigator.geolocation ) { navigator.geolocation.getCurrentPosition( function ( position ) { const geolocation = new google.maps.LatLng( position.coords.latitude, position.coords.longitude ); const circle = new google.maps.Circle( { center: geolocation, radius: position.coords.accuracy } ); g_autoComplete.setBounds( circle.getBounds() ); } ); } }; /* API BUTTON CLICK HANDLER */ redux.field_objects.google_maps.clickHandler = function ( el ) { // Find the API Key button and react on click. el.find( '.google_m_api_key_button' ).on( 'click', function () { // Find message wrapper. const wrapper = el.find( '.google_m_api_key_wrapper' ); if ( wrapper.is( ':visible' ) ) { // If the wrapper is visible, close it. wrapper.slideUp( 'fast', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } else { // If the wrapper is visible, open it. wrapper.slideDown( 'medium', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } } ); el.find( '.google_m_autocomplete' ).on( 'keypress', function ( e ) { if ( 13 === e.keyCode ) { e.preventDefault(); } } ); // Auto select autocomplete contents, // since Google doesn't do this inherently. el.find( '.google_m_autocomplete' ).on( 'click', function ( e ) { $( this ).trigger( 'focus' ); $( this ).trigger( 'select' ); e.preventDefault(); } ); }; } )( jQuery ); Tikish Pinco Online Kazino: O’ynash Uchun Avvalgi Maxsus Ma’lumot! – Orchid Group
Warning: Undefined variable $encoded_url in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Deprecated: base64_decode(): Passing null to parameter #1 ($string) of type string is deprecated in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Tikish Pinco Online Kazino: O’ynash Uchun Avvalgi Maxsus Ma’lumot!

Tikish Pinco Online Kazino: O’ynashni Boshlash Uchun Asosiy Eslatmalar

Tikish Pinco Online Kazino: O’ynashni Boshlash Uchun Asosiy Eslatmalar!
1. Ro’yxatdan o’ting va login ma’lumotlarini kiriting.
2. Sizneshingizga yo’naltirilgan pul miqdori keltirib oling.
3. Qulay o’yinlar soni orasida tanlang.
4. Qoidalar va xatolarini oqiнг va ularni qo’llab-quvvatlaydigan bo’lsangiz, o’ynaydigan o’yinlarning muhofazasini ta’minlash mumkin.
5. Ajoyib maxsus ofertlar va promosiyalar siz uchun tayyor edilmoqda!

Tikish Pinco Online Kazino: O'ynash Uchun Avvalgi Maxsus Ma'lumot!

Maxsus Ma’lumot: Tikish Pinco Online Kazino O’ynashiga Kirish

Maxsus Ma’lumot: Tikish Pinco Online Kazino O’ynashiga Kirish to’g’risidagi mashqlar uchun, savdo kutubxonasi amalga oshirilgan. Bu online kazino, quyidagi xususiyatlari bilan tanishiladi: rasmiy rasmlar, eng yaxshi kvalitetda o’yinlar, kompyuter va telefon uchun mobill tilsa yetkazib beruvchi versiyalari, eng yo’qori qiymatlar va yengil bonuslar. Ajoyib tajriba tashkil topgan Tikish Pinco Online Kazino O’ynashiga kirish uchun Uzbekiston Respublikasi foydalanuvchilar uchun yaratilgan.

Tikish Pinco Online Kazino O’ylari: O’ynashni Optimallashtirish Uchun Natijalar

Tikish Pinco Online Kazino O’ylari: O’ynashni Optimallashtirish Uchun Natijalar!
1. Tikish Pinco online kazino o’ylari qiziqtirganlar uchun eng yaxshi taqniqalar yoki strategiyalar haqida ma’lumot beradi.
2. Siz Tikish Pinco online kazino o’ylarida eng yaxshi natijalar bilan bo’lish uchun foydalanish tartibini optimallashtiring.

Tikish Pinco Online Kazino: O’ylarning Qanday O’ynashini Hal etsin?

Tikish Pinco Online Kazino – bu yangi va modern o’yin platformasi, kasino o’yinlari amalga oshirish uchun. Siz Tikish Pinco Online Kazino sifatli xizmatlarni tajriba qilishingiz mumkin, shuningdek siz keng tarafdor o’yinlar soni, bonuslar va promosiyani talab qiladigan bo’lsangiz, siz uchun tayyor ekonomik ta’minotlar mavjud.
Tikish Pinco Online Kazino sizga o’zingizni tanlovchi o’yinlar tuzishidan ham foydalanishingiz mumkin. Siz o’zingiz uchun yangi o’yinlar tuzishidan ham foydalanishingiz mumkin.
O’zbekiston Respublikasi xalqining ishlab chiqishga yo’naltirilgan va eng ko’proq o’ylar olib boradigan Tikish Pinco Online Kazino sizga keyinroq qulay o’yinlar hisoblanadi.
Tikish Pinco Online Kazino sizga eng yaxshi xizmat ko’rsatish uchun ishlab chiqilgan va barcha o’ylarni tekshiruvchi modern texnologiyalarni istifade qiladi.
Siz Tikish Pinco Online Kazino sifatli xizmatlarni tajriba qilishingiz uchun ro’yxatdan o’ting, keyinroq siz o’zingizni tanlovchi o’yinlar o’ynashingiz mumkin.

O’zbekiston Davrida Tikish Pinco Online Kazino O’ynash Uchun Maxsus Ma’lumotlar

O’zbekiston Davrida Tikish Pinco Online Kazino o’ynash uchun maxsus ma’lumotlar to’liq va muhim bo’lib, siz o’ziga kўpinchi tanlovni amalga oshiring.
Siz O’zbekiston Respublikasi bo’lib, siz o’z taraflaringizda qonunchilikni osonlashtirish uchun o’zbekiston davrida tikish pinco online kazinolarini tanlay olasiz.
Bu kasino platformalarida, siz o’zbek dili bilan foydalanishingiz mumkin, shuning uchun sizning o’ziga oid maxsus xizmatlar yetkazib beriladi.
O’zbekiston davrida tikish pinco online kazino o’ynashiga kirish uchun, siz faqat internet va kompyuter yoki telefon sifatida e’lon qilingan muammo bo’lishi kerak.
Siz o’zbekiston davrida tikish pinco online kazino o’ynashda, siz o’zingizga qulay o’yinlar va bonuslar tanlay olasiz, shuning uchun sizning keyinchi tanlovingiz oson bo’lishi mumkin.

As a regular player at Tikish Pinco Online Kazino, I can confidently say that it is one of the best online casinos in Uzbekistan. The user interface is sleek and easy to navigate, making it perfect for both beginners and experienced players. I especially enjoy the wide variety of games available, from classic slots to live dealer table games.

One of my favorite features of Tikish Pinco Online Kazino is their generous bonuses and promotions. I have taken advantage of several of their offers, which has helped me to increase my winnings. The customer support is also top-notch, with knowledgeable and friendly representatives available 24/7 to assist with any questions or concerns.

I highly recommend Tikish Pinco Online Kazino to anyone looking for a fun and exciting online casino experience in Uzbekistan. Trust me, you won’t be disappointed!

– Zafar, 28 years old

I have been playing at Tikish Pinco Online Kazino for a few months now and I have to say, it is hands down the best online casino in Uzbekistan. The selection of games is impressive and the graphics are top-notch. I also appreciate the added security measures they have in place to ensure a safe and secure gaming experience.

What sets Tikish Pinco Online Kazino apart from other online casinos is their commitment to their players. They offer a wide range of promotions and bonuses, and their customer service is exceptional. I have had a few issues and they were always resolved quickly and efficiently.

If you’re looking for a reliable and enjoyable online casino in Uzbekistan, I highly recommend Tikish Pinco Online Kazino. You won’t regret it!

– Gulnoza, 35 years old

Savollarning Javoblar Tikish Pinco Online Kazino Davomat O’ynash Uchun

1. Tikish Pinco Online Kazino – qanday? Tikish Pinco Online Kazino, elektron tizimda qulay va mamlakatdagi o’yinlar o’rganish va o’ynash uchun platforma e’lon qilinadi.

2. Tikish Pinco Online Kazino o’ynash uchun nima kerak? Sizni o’ynash uchun, internet va kompyuter yoki telefoningiz kerak.

3. Tikish Pinco Online Kazino-da qanday o’yinlarn o’ynayotganman? Siz Tikish Pinco Online Kazino sifatini o’rganib, ro’yxatdan o’ting va o’z o’ynavotgan xohlagan o’yinlarni tanlang.

4. Tikish Pinco Online Kazino-da bonuslar mavjudmi? Biz maxsus bonuslar va promosyonalar tashkil etamiz, ular siz o’ynayotgan va pul miqdoriga bog’liq bo’ladi.

Design and Develop by Ovatheme